---
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
  annotations:
    controller-gen.kubebuilder.io/version: v0.11.1
  creationTimestamp: null
  name: scrapeconfigs.monitoring.coreos.com
spec:
  group: monitoring.coreos.com
  names:
    categories:
    - prometheus-operator
    kind: ScrapeConfig
    listKind: ScrapeConfigList
    plural: scrapeconfigs
    shortNames:
    - scfg
    singular: scrapeconfig
  scope: Namespaced
  versions:
  - name: v1alpha1
    schema:
      openAPIV3Schema:
        description: ScrapeConfig defines a namespaced Prometheus scrape_config to
          be aggregated across multiple namespaces into the Prometheus configuration.
        properties:
          apiVersion:
            description: 'APIVersion defines the versioned schema of this representation
              of an object. Servers should convert recognized schemas to the latest
              internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
            type: string
          kind:
            description: 'Kind is a string value representing the REST resource this
              object represents. Servers may infer this from the endpoint the client
              submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
            type: string
          metadata:
            type: object
          spec:
            description: ScrapeConfigSpec is a specification of the desired configuration
              for a scrape configuration.
            properties:
              authorization:
                description: Authorization header to use on every scrape request.
                properties:
                  credentials:
                    description: Selects a key of a Secret in the namespace that contains
                      the credentials for authentication.
                    properties:
                      key:
                        description: The key of the secret to select from.  Must be
                          a valid secret key.
                        type: string
                      name:
                        description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
                          TODO: Add other useful fields. apiVersion, kind, uid?'
                        type: string
                      optional:
                        description: Specify whether the Secret or its key must be
                          defined
                        type: boolean
                    required:
                    - key
                    type: object
                    x-kubernetes-map-type: atomic
                  type:
                    description: "Defines the authentication type. The value is case-insensitive.
                      \n \"Basic\" is not a supported value. \n Default: \"Bearer\""
                    type: string
                type: object
              basicAuth:
                description: BasicAuth information to use on every scrape request.
                properties:
                  password:
                    description: The secret in the service monitor namespace that
                      contains the password for authentication.
                    properties:
                      key:
                        description: The key of the secret to select from.  Must be
                          a valid secret key.
                        type: string
                      name:
                        description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
                          TODO: Add other useful fields. apiVersion, kind, uid?'
                        type: string
                      optional:
                        description: Specify whether the Secret or its key must be
                          defined
                        type: boolean
                    required:
                    - key
                    type: object
                    x-kubernetes-map-type: atomic
                  username:
                    description: The secret in the service monitor namespace that
                      contains the username for authentication.
                    properties:
                      key:
                        description: The key of the secret to select from.  Must be
                          a valid secret key.
                        type: string
                      name:
                        description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
                          TODO: Add other useful fields. apiVersion, kind, uid?'
                        type: string
                      optional:
                        description: Specify whether the Secret or its key must be
                          defined
                        type: boolean
                    required:
                    - key
                    type: object
                    x-kubernetes-map-type: atomic
                type: object
              consulSDConfigs:
                description: ConsulSDConfigs defines a list of Consul service discovery
                  configurations.
                items:
                  description: ConsulSDConfig defines a Consul service discovery configuration
                    See https://prometheus.io/docs/prometheus/latest/configuration/configuration/#consul_sd_config
                  properties:
                    allow_stale:
                      description: Allow stale Consul results (see https://www.consul.io/api/features/consistency.html).
                        Will reduce load on Consul. If unset, Prometheus uses its
                        default value.
                      type: boolean
                    authorization:
                      description: Authorization header configuration to authenticate
                        against the Consul Server.
                      properties:
                        credentials:
                          description: Selects a key of a Secret in the namespace
                            that contains the credentials for authentication.
                          properties:
                            key:
                              description: The key of the secret to select from.  Must
                                be a valid secret key.
                              type: string
                            name:
                              description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
                                TODO: Add other useful fields. apiVersion, kind, uid?'
                              type: string
                            optional:
                              description: Specify whether the Secret or its key must
                                be defined
                              type: boolean
                          required:
                          - key
                          type: object
                          x-kubernetes-map-type: atomic
                        type:
                          description: "Defines the authentication type. The value
                            is case-insensitive. \n \"Basic\" is not a supported value.
                            \n Default: \"Bearer\""
                          type: string
                      type: object
                    basicAuth:
                      description: 'BasicAuth information to authenticate against
                        the Consul Server. More info: https://prometheus.io/docs/operating/configuration/#endpoints'
                      properties:
                        password:
                          description: The secret in the service monitor namespace
                            that contains the password for authentication.
                          properties:
                            key:
                              description: The key of the secret to select from.  Must
                                be a valid secret key.
                              type: string
                            name:
                              description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
                                TODO: Add other useful fields. apiVersion, kind, uid?'
                              type: string
                            optional:
                              description: Specify whether the Secret or its key must
                                be defined
                              type: boolean
                          required:
                          - key
                          type: object
                          x-kubernetes-map-type: atomic
                        username:
                          description: The secret in the service monitor namespace
                            that contains the username for authentication.
                          properties:
                            key:
                              description: The key of the secret to select from.  Must
                                be a valid secret key.
                              type: string
                            name:
                              description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
                                TODO: Add other useful fields. apiVersion, kind, uid?'
                              type: string
                            optional:
                              description: Specify whether the Secret or its key must
                                be defined
                              type: boolean
                          required:
                          - key
                          type: object
                          x-kubernetes-map-type: atomic
                      type: object
                    datacenter:
                      description: Consul Datacenter name, if not provided it will
                        use the local Consul Agent Datacenter.
                      type: string
                    enable_http2:
                      description: Whether to enable HTTP2. If unset, Prometheus uses
                        its default value.
                      type: boolean
                    follow_redirects:
                      description: Configure whether HTTP requests follow HTTP 3xx
                        redirects. If unset, Prometheus uses its default value.
                      type: boolean
                    namespace:
                      description: Namespaces are only supported in Consul Enterprise.
                      type: string
                    no_proxy:
                      description: Comma-separated string that can contain IPs, CIDR
                        notation, domain names that should be excluded from proxying.
                        IP and domain names can contain port numbers.
                      type: string
                    node_meta:
                      additionalProperties:
                        type: string
                      description: Node metadata key/value pairs to filter nodes for
                        a given service.
                      type: object
                      x-kubernetes-map-type: atomic
                    oauth2:
                      description: Optional OAuth 2.0 configuration.
                      properties:
                        clientId:
                          description: The secret or configmap containing the OAuth2
                            client id
                          properties:
                            configMap:
                              description: ConfigMap containing data to use for the
                                targets.
                              properties:
                                key:
                                  description: The key to select.
                                  type: string
                                name:
                                  description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
                                    TODO: Add other useful fields. apiVersion, kind,
                                    uid?'
                                  type: string
                                optional:
                                  description: Specify whether the ConfigMap or its
                                    key must be defined
                                  type: boolean
                              required:
                              - key
                              type: object
                              x-kubernetes-map-type: atomic
                            secret:
                              description: Secret containing data to use for the targets.
                              properties:
                                key:
                                  description: The key of the secret to select from.  Must
                                    be a valid secret key.
                                  type: string
                                name:
                                  description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
                                    TODO: Add other useful fields. apiVersion, kind,
                                    uid?'
                                  type: string
                                optional:
                                  description: Specify whether the Secret or its key
                                    must be defined
                                  type: boolean
                              required:
                              - key
                              type: object
                              x-kubernetes-map-type: atomic
                          type: object
                        clientSecret:
                          description: The secret containing the OAuth2 client secret
                          properties:
                            key:
                              description: The key of the secret to select from.  Must
                                be a valid secret key.
                              type: string
                            name:
                              description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
                                TODO: Add other useful fields. apiVersion, kind, uid?'
                              type: string
                            optional:
                              description: Specify whether the Secret or its key must
                                be defined
                              type: boolean
                          required:
                          - key
                          type: object
                          x-kubernetes-map-type: atomic
                        endpointParams:
                          additionalProperties:
                            type: string
                          description: Parameters to append to the token URL
                          type: object
                        scopes:
                          description: OAuth2 scopes used for the token request
                          items:
                            type: string
                          type: array
                        tokenUrl:
                          description: The URL to fetch the token from
                          minLength: 1
                          type: string
                      required:
                      - clientId
                      - clientSecret
                      - tokenUrl
                      type: object
                    partition:
                      description: Admin Partitions are only supported in Consul Enterprise.
                      type: string
                    proxy_connect_header:
                      additionalProperties:
                        description: SecretKeySelector selects a key of a Secret.
                        properties:
                          key:
                            description: The key of the secret to select from.  Must
                              be a valid secret key.
                            type: string
                          name:
                            description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
                              TODO: Add other useful fields. apiVersion, kind, uid?'
                            type: string
                          optional:
                            description: Specify whether the Secret or its key must
                              be defined
                            type: boolean
                        required:
                        - key
                        type: object
                      description: Specifies headers to send to proxies during CONNECT
                        requests.
                      type: object
                      x-kubernetes-map-type: atomic
                    proxy_from_environment:
                      description: Use proxy URL indicated by environment variables
                        (HTTP_PROXY, https_proxy, HTTPs_PROXY, https_proxy, and no_proxy)
                        If unset, Prometheus uses its default value.
                      type: boolean
                    proxy_url:
                      description: Optional proxy URL.
                      type: string
                    refresh_interval:
                      description: The time after which the provided names are refreshed.
                        On large setup it might be a good idea to increase this value
                        because the catalog will change all the time. If unset, Prometheus
                        uses its default value.
                      pattern: ^(0|(([0-9]+)y)?(([0-9]+)w)?(([0-9]+)d)?(([0-9]+)h)?(([0-9]+)m)?(([0-9]+)s)?(([0-9]+)ms)?)$
                      type: string
                    scheme:
                      description: HTTP Scheme default "http"
                      enum:
                      - HTTP
                      - HTTPS
                      type: string
                    server:
                      description: A valid string consisting of a hostname or IP followed
                        by an optional port number.
                      minLength: 1
                      type: string
                    services:
                      description: A list of services for which targets are retrieved.
                        If omitted, all services are scraped.
                      items:
                        type: string
                      type: array
                      x-kubernetes-list-type: atomic
                    tag_separator:
                      description: The string by which Consul tags are joined into
                        the tag label. If unset, Prometheus uses its default value.
                      type: string
                    tags:
                      description: An optional list of tags used to filter nodes for
                        a given service. Services must contain all tags in the list.
                      items:
                        type: string
                      type: array
                      x-kubernetes-list-type: atomic
                    tlsConfig:
                      description: TLS Config
                      properties:
                        ca:
                          description: Certificate authority used when verifying server
                            certificates.
                          properties:
                            configMap:
                              description: ConfigMap containing data to use for the
                                targets.
                              properties:
                                key:
                                  description: The key to select.
                                  type: string
                                name:
                                  description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
                                    TODO: Add other useful fields. apiVersion, kind,
                                    uid?'
                                  type: string
                                optional:
                                  description: Specify whether the ConfigMap or its
                                    key must be defined
                                  type: boolean
                              required:
                              - key
                              type: object
                              x-kubernetes-map-type: atomic
                            secret:
                              description: Secret containing data to use for the targets.
                              properties:
                                key:
                                  description: The key of the secret to select from.  Must
                                    be a valid secret key.
                                  type: string
                                name:
                                  description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
                                    TODO: Add other useful fields. apiVersion, kind,
                                    uid?'
                                  type: string
                                optional:
                                  description: Specify whether the Secret or its key
                                    must be defined
                                  type: boolean
                              required:
                              - key
                              type: object
                              x-kubernetes-map-type: atomic
                          type: object
                        cert:
                          description: Client certificate to present when doing client-authentication.
                          properties:
                            configMap:
                              description: ConfigMap containing data to use for the
                                targets.
                              properties:
                                key:
                                  description: The key to select.
                                  type: string
                                name:
                                  description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
                                    TODO: Add other useful fields. apiVersion, kind,
                                    uid?'
                                  type: string
                                optional:
                                  description: Specify whether the ConfigMap or its
                                    key must be defined
                                  type: boolean
                              required:
                              - key
                              type: object
                              x-kubernetes-map-type: atomic
                            secret:
                              description: Secret containing data to use for the targets.
                              properties:
                                key:
                                  description: The key of the secret to select from.  Must
                                    be a valid secret key.
                                  type: string
                                name:
                                  description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
                                    TODO: Add other useful fields. apiVersion, kind,
                                    uid?'
                                  type: string
                                optional:
                                  description: Specify whether the Secret or its key
                                    must be defined
                                  type: boolean
                              required:
                              - key
                              type: object
                              x-kubernetes-map-type: atomic
                          type: object
                        insecureSkipVerify:
                          description: Disable target certificate validation.
                          type: boolean
                        keySecret:
                          description: Secret containing the client key file for the
                            targets.
                          properties:
                            key:
                              description: The key of the secret to select from.  Must
                                be a valid secret key.
                              type: string
                            name:
                              description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
                                TODO: Add other useful fields. apiVersion, kind, uid?'
                              type: string
                            optional:
                              description: Specify whether the Secret or its key must
                                be defined
                              type: boolean
                          required:
                          - key
                          type: object
                          x-kubernetes-map-type: atomic
                        serverName:
                          description: Used to verify the hostname for the targets.
                          type: string
                      type: object
                    tokenRef:
                      description: Consul ACL TokenRef, if not provided it will use
                        the ACL from the local Consul Agent.
                      properties:
                        key:
                          description: The key of the secret to select from.  Must
                            be a valid secret key.
                          type: string
                        name:
                          description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
                            TODO: Add other useful fields. apiVersion, kind, uid?'
                          type: string
                        optional:
                          description: Specify whether the Secret or its key must
                            be defined
                          type: boolean
                      required:
                      - key
                      type: object
                  required:
                  - server
                  type: object
                type: array
              dnsSDConfigs:
                description: DNSSDConfigs defines a list of DNS service discovery
                  configurations.
                items:
                  description: DNSSDConfig allows specifying a set of DNS domain names
                    which are periodically queried to discover a list of targets.
                    The DNS servers to be contacted are read from /etc/resolv.conf.
                    See https://prometheus.io/docs/prometheus/latest/configuration/configuration/#dns_sd_config
                  properties:
                    names:
                      description: A list of DNS domain names to be queried.
                      items:
                        type: string
                      minItems: 1
                      type: array
                    port:
                      description: The port number used if the query type is not SRV
                        Ignored for SRV records
                      type: integer
                    refreshInterval:
                      description: RefreshInterval configures the time after which
                        the provided names are refreshed. If not set, Prometheus uses
                        its default value.
                      pattern: ^(0|(([0-9]+)y)?(([0-9]+)w)?(([0-9]+)d)?(([0-9]+)h)?(([0-9]+)m)?(([0-9]+)s)?(([0-9]+)ms)?)$
                      type: string
                    type:
                      description: The type of DNS query to perform. One of SRV, A,
                        AAAA or MX. If not set, Prometheus uses its default value.
                      enum:
                      - SRV
                      - A
                      - AAAA
                      - MX
                      type: string
                  required:
                  - names
                  type: object
                type: array
              fileSDConfigs:
                description: FileSDConfigs defines a list of file service discovery
                  configurations.
                items:
                  description: FileSDConfig defines a Prometheus file service discovery
                    configuration See https://prometheus.io/docs/prometheus/latest/configuration/configuration/#file_sd_config
                  properties:
                    files:
                      description: 'List of files to be used for file discovery. Recommendation:
                        use absolute paths. While relative paths work, the prometheus-operator
                        project makes no guarantees about the working directory where
                        the configuration file is stored. Files must be mounted using
                        Prometheus.ConfigMaps or Prometheus.Secrets.'
                      items:
                        description: SDFile represents a file used for service discovery
                        pattern: ^[^*]*(\*[^/]*)?\.(json|yml|yaml|JSON|YML|YAML)$
                        type: string
                      minItems: 1
                      type: array
                    refreshInterval:
                      description: RefreshInterval configures the refresh interval
                        at which Prometheus will reload the content of the files.
                      pattern: ^(0|(([0-9]+)y)?(([0-9]+)w)?(([0-9]+)d)?(([0-9]+)h)?(([0-9]+)m)?(([0-9]+)s)?(([0-9]+)ms)?)$
                      type: string
                  required:
                  - files
                  type: object
                type: array
              honorLabels:
                description: HonorLabels chooses the metric's labels on collisions
                  with target labels.
                type: boolean
              honorTimestamps:
                description: HonorTimestamps controls whether Prometheus respects
                  the timestamps present in scraped data.
                type: boolean
              httpSDConfigs:
                description: HTTPSDConfigs defines a list of HTTP service discovery
                  configurations.
                items:
                  description: HTTPSDConfig defines a prometheus HTTP service discovery
                    configuration See https://prometheus.io/docs/prometheus/latest/configuration/configuration/#http_sd_config
                  properties:
                    authorization:
                      description: Authorization header configuration to authenticate
                        against the target HTTP endpoint.
                      properties:
                        credentials:
                          description: Selects a key of a Secret in the namespace
                            that contains the credentials for authentication.
                          properties:
                            key:
                              description: The key of the secret to select from.  Must
                                be a valid secret key.
                              type: string
                            name:
                              description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
                                TODO: Add other useful fields. apiVersion, kind, uid?'
                              type: string
                            optional:
                              description: Specify whether the Secret or its key must
                                be defined
                              type: boolean
                          required:
                          - key
                          type: object
                          x-kubernetes-map-type: atomic
                        type:
                          description: "Defines the authentication type. The value
                            is case-insensitive. \n \"Basic\" is not a supported value.
                            \n Default: \"Bearer\""
                          type: string
                      type: object
                    basicAuth:
                      description: 'BasicAuth information to authenticate against
                        the target HTTP endpoint. More info: https://prometheus.io/docs/operating/configuration/#endpoints'
                      properties:
                        password:
                          description: The secret in the service monitor namespace
                            that contains the password for authentication.
                          properties:
                            key:
                              description: The key of the secret to select from.  Must
                                be a valid secret key.
                              type: string
                            name:
                              description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
                                TODO: Add other useful fields. apiVersion, kind, uid?'
                              type: string
                            optional:
                              description: Specify whether the Secret or its key must
                                be defined
                              type: boolean
                          required:
                          - key
                          type: object
                          x-kubernetes-map-type: atomic
                        username:
                          description: The secret in the service monitor namespace
                            that contains the username for authentication.
                          properties:
                            key:
                              description: The key of the secret to select from.  Must
                                be a valid secret key.
                              type: string
                            name:
                              description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
                                TODO: Add other useful fields. apiVersion, kind, uid?'
                              type: string
                            optional:
                              description: Specify whether the Secret or its key must
                                be defined
                              type: boolean
                          required:
                          - key
                          type: object
                          x-kubernetes-map-type: atomic
                      type: object
                    refreshInterval:
                      description: RefreshInterval configures the refresh interval
                        at which Prometheus will re-query the endpoint to update the
                        target list.
                      pattern: ^(0|(([0-9]+)y)?(([0-9]+)w)?(([0-9]+)d)?(([0-9]+)h)?(([0-9]+)m)?(([0-9]+)s)?(([0-9]+)ms)?)$
                      type: string
                    tlsConfig:
                      description: TLS configuration applying to the target HTTP endpoint.
                      properties:
                        ca:
                          description: Certificate authority used when verifying server
                            certificates.
                          properties:
                            configMap:
                              description: ConfigMap containing data to use for the
                                targets.
                              properties:
                                key:
                                  description: The key to select.
                                  type: string
                                name:
                                  description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
                                    TODO: Add other useful fields. apiVersion, kind,
                                    uid?'
                                  type: string
                                optional:
                                  description: Specify whether the ConfigMap or its
                                    key must be defined
                                  type: boolean
                              required:
                              - key
                              type: object
                              x-kubernetes-map-type: atomic
                            secret:
                              description: Secret containing data to use for the targets.
                              properties:
                                key:
                                  description: The key of the secret to select from.  Must
                                    be a valid secret key.
                                  type: string
                                name:
                                  description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
                                    TODO: Add other useful fields. apiVersion, kind,
                                    uid?'
                                  type: string
                                optional:
                                  description: Specify whether the Secret or its key
                                    must be defined
                                  type: boolean
                              required:
                              - key
                              type: object
                              x-kubernetes-map-type: atomic
                          type: object
                        cert:
                          description: Client certificate to present when doing client-authentication.
                          properties:
                            configMap:
                              description: ConfigMap containing data to use for the
                                targets.
                              properties:
                                key:
                                  description: The key to select.
                                  type: string
                                name:
                                  description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
                                    TODO: Add other useful fields. apiVersion, kind,
                                    uid?'
                                  type: string
                                optional:
                                  description: Specify whether the ConfigMap or its
                                    key must be defined
                                  type: boolean
                              required:
                              - key
                              type: object
                              x-kubernetes-map-type: atomic
                            secret:
                              description: Secret containing data to use for the targets.
                              properties:
                                key:
                                  description: The key of the secret to select from.  Must
                                    be a valid secret key.
                                  type: string
                                name:
                                  description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
                                    TODO: Add other useful fields. apiVersion, kind,
                                    uid?'
                                  type: string
                                optional:
                                  description: Specify whether the Secret or its key
                                    must be defined
                                  type: boolean
                              required:
                              - key
                              type: object
                              x-kubernetes-map-type: atomic
                          type: object
                        insecureSkipVerify:
                          description: Disable target certificate validation.
                          type: boolean
                        keySecret:
                          description: Secret containing the client key file for the
                            targets.
                          properties:
                            key:
                              description: The key of the secret to select from.  Must
                                be a valid secret key.
                              type: string
                            name:
                              description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
                                TODO: Add other useful fields. apiVersion, kind, uid?'
                              type: string
                            optional:
                              description: Specify whether the Secret or its key must
                                be defined
                              type: boolean
                          required:
                          - key
                          type: object
                          x-kubernetes-map-type: atomic
                        serverName:
                          description: Used to verify the hostname for the targets.
                          type: string
                      type: object
                    url:
                      description: URL from which the targets are fetched.
                      minLength: 1
                      pattern: ^http(s)?://.+$
                      type: string
                  required:
                  - url
                  type: object
                type: array
              keepDroppedTargets:
                description: "Per-scrape limit on the number of targets dropped by
                  relabeling that will be kept in memory. 0 means no limit. \n It
                  requires Prometheus >= v2.47.0."
                format: int64
                type: integer
              kubernetesSDConfigs:
                description: KubernetesSDConfigs defines a list of Kubernetes service
                  discovery configurations.
                items:
                  description: KubernetesSDConfig allows retrieving scrape targets
                    from Kubernetes' REST API. See https://prometheus.io/docs/prometheus/latest/configuration/configuration/#kubernetes_sd_config
                  properties:
                    role:
                      description: Role of the Kubernetes entities that should be
                        discovered. Currently the only supported role is "Node".
                      enum:
                      - Node
                      type: string
                  required:
                  - role
                  type: object
                type: array
              labelLimit:
                description: Per-scrape limit on number of labels that will be accepted
                  for a sample. Only valid in Prometheus versions 2.27.0 and newer.
                format: int64
                type: integer
              labelNameLengthLimit:
                description: Per-scrape limit on length of labels name that will be
                  accepted for a sample. Only valid in Prometheus versions 2.27.0
                  and newer.
                format: int64
                type: integer
              labelValueLengthLimit:
                description: Per-scrape limit on length of labels value that will
                  be accepted for a sample. Only valid in Prometheus versions 2.27.0
                  and newer.
                format: int64
                type: integer
              metricRelabelings:
                description: MetricRelabelConfigs to apply to samples before ingestion.
                items:
                  description: "RelabelConfig allows dynamic rewriting of the label
                    set for targets, alerts, scraped samples and remote write samples.
                    \n More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config"
                  properties:
                    action:
                      default: replace
                      description: "Action to perform based on the regex matching.
                        \n `Uppercase` and `Lowercase` actions require Prometheus
                        >= v2.36.0. `DropEqual` and `KeepEqual` actions require Prometheus
                        >= v2.41.0. \n Default: \"Replace\""
                      enum:
                      - replace
                      - Replace
                      - keep
                      - Keep
                      - drop
                      - Drop
                      - hashmod
                      - HashMod
                      - labelmap
                      - LabelMap
                      - labeldrop
                      - LabelDrop
                      - labelkeep
                      - LabelKeep
                      - lowercase
                      - Lowercase
                      - uppercase
                      - Uppercase
                      - keepequal
                      - KeepEqual
                      - dropequal
                      - DropEqual
                      type: string
                    modulus:
                      description: "Modulus to take of the hash of the source label
                        values. \n Only applicable when the action is `HashMod`."
                      format: int64
                      type: integer
                    regex:
                      description: Regular expression against which the extracted
                        value is matched.
                      type: string
                    replacement:
                      description: "Replacement value against which a Replace action
                        is performed if the regular expression matches. \n Regex capture
                        groups are available."
                      type: string
                    separator:
                      description: Separator is the string between concatenated SourceLabels.
                      type: string
                    sourceLabels:
                      description: The source labels select values from existing labels.
                        Their content is concatenated using the configured Separator
                        and matched against the configured regular expression.
                      items:
                        description: LabelName is a valid Prometheus label name which
                          may only contain ASCII letters, numbers, as well as underscores.
                        pattern: ^[a-zA-Z_][a-zA-Z0-9_]*$
                        type: string
                      type: array
                    targetLabel:
                      description: "Label to which the resulting string is written
                        in a replacement. \n It is mandatory for `Replace`, `HashMod`,
                        `Lowercase`, `Uppercase`, `KeepEqual` and `DropEqual` actions.
                        \n Regex capture groups are available."
                      type: string
                  type: object
                type: array
              metricsPath:
                description: MetricsPath HTTP path to scrape for metrics. If empty,
                  Prometheus uses the default value (e.g. /metrics).
                type: string
              params:
                additionalProperties:
                  items:
                    type: string
                  type: array
                description: Optional HTTP URL parameters
                type: object
                x-kubernetes-map-type: atomic
              relabelings:
                description: 'RelabelConfigs defines how to rewrite the target''s
                  labels before scraping. Prometheus Operator automatically adds relabelings
                  for a few standard Kubernetes fields. The original scrape job''s
                  name is available via the `__tmp_prometheus_job_name` label. More
                  info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config'
                items:
                  description: "RelabelConfig allows dynamic rewriting of the label
                    set for targets, alerts, scraped samples and remote write samples.
                    \n More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config"
                  properties:
                    action:
                      default: replace
                      description: "Action to perform based on the regex matching.
                        \n `Uppercase` and `Lowercase` actions require Prometheus
                        >= v2.36.0. `DropEqual` and `KeepEqual` actions require Prometheus
                        >= v2.41.0. \n Default: \"Replace\""
                      enum:
                      - replace
                      - Replace
                      - keep
                      - Keep
                      - drop
                      - Drop
                      - hashmod
                      - HashMod
                      - labelmap
                      - LabelMap
                      - labeldrop
                      - LabelDrop
                      - labelkeep
                      - LabelKeep
                      - lowercase
                      - Lowercase
                      - uppercase
                      - Uppercase
                      - keepequal
                      - KeepEqual
                      - dropequal
                      - DropEqual
                      type: string
                    modulus:
                      description: "Modulus to take of the hash of the source label
                        values. \n Only applicable when the action is `HashMod`."
                      format: int64
                      type: integer
                    regex:
                      description: Regular expression against which the extracted
                        value is matched.
                      type: string
                    replacement:
                      description: "Replacement value against which a Replace action
                        is performed if the regular expression matches. \n Regex capture
                        groups are available."
                      type: string
                    separator:
                      description: Separator is the string between concatenated SourceLabels.
                      type: string
                    sourceLabels:
                      description: The source labels select values from existing labels.
                        Their content is concatenated using the configured Separator
                        and matched against the configured regular expression.
                      items:
                        description: LabelName is a valid Prometheus label name which
                          may only contain ASCII letters, numbers, as well as underscores.
                        pattern: ^[a-zA-Z_][a-zA-Z0-9_]*$
                        type: string
                      type: array
                    targetLabel:
                      description: "Label to which the resulting string is written
                        in a replacement. \n It is mandatory for `Replace`, `HashMod`,
                        `Lowercase`, `Uppercase`, `KeepEqual` and `DropEqual` actions.
                        \n Regex capture groups are available."
                      type: string
                  type: object
                type: array
              sampleLimit:
                description: SampleLimit defines per-scrape limit on number of scraped
                  samples that will be accepted.
                format: int64
                type: integer
              scheme:
                description: Configures the protocol scheme used for requests. If
                  empty, Prometheus uses HTTP by default.
                enum:
                - HTTP
                - HTTPS
                type: string
              scrapeInterval:
                description: ScrapeInterval is the interval between consecutive scrapes.
                pattern: ^(0|(([0-9]+)y)?(([0-9]+)w)?(([0-9]+)d)?(([0-9]+)h)?(([0-9]+)m)?(([0-9]+)s)?(([0-9]+)ms)?)$
                type: string
              scrapeTimeout:
                description: ScrapeTimeout is the number of seconds to wait until
                  a scrape request times out.
                pattern: ^(0|(([0-9]+)y)?(([0-9]+)w)?(([0-9]+)d)?(([0-9]+)h)?(([0-9]+)m)?(([0-9]+)s)?(([0-9]+)ms)?)$
                type: string
              staticConfigs:
                description: StaticConfigs defines a list of static targets with a
                  common label set.
                items:
                  description: StaticConfig defines a Prometheus static configuration.
                    See https://prometheus.io/docs/prometheus/latest/configuration/configuration/#scrape_config
                  properties:
                    labels:
                      additionalProperties:
                        type: string
                      description: Labels assigned to all metrics scraped from the
                        targets.
                      type: object
                      x-kubernetes-map-type: atomic
                    targets:
                      description: List of targets for this static configuration.
                      items:
                        description: Target represents a target for Prometheus to
                          scrape
                        type: string
                      type: array
                  type: object
                type: array
              targetLimit:
                description: TargetLimit defines a limit on the number of scraped
                  targets that will be accepted.
                format: int64
                type: integer
              tlsConfig:
                description: TLS configuration to use on every scrape request
                properties:
                  ca:
                    description: Certificate authority used when verifying server
                      certificates.
                    properties:
                      configMap:
                        description: ConfigMap containing data to use for the targets.
                        properties:
                          key:
                            description: The key to select.
                            type: string
                          name:
                            description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
                              TODO: Add other useful fields. apiVersion, kind, uid?'
                            type: string
                          optional:
                            description: Specify whether the ConfigMap or its key
                              must be defined
                            type: boolean
                        required:
                        - key
                        type: object
                        x-kubernetes-map-type: atomic
                      secret:
                        description: Secret containing data to use for the targets.
                        properties:
                          key:
                            description: The key of the secret to select from.  Must
                              be a valid secret key.
                            type: string
                          name:
                            description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
                              TODO: Add other useful fields. apiVersion, kind, uid?'
                            type: string
                          optional:
                            description: Specify whether the Secret or its key must
                              be defined
                            type: boolean
                        required:
                        - key
                        type: object
                        x-kubernetes-map-type: atomic
                    type: object
                  cert:
                    description: Client certificate to present when doing client-authentication.
                    properties:
                      configMap:
                        description: ConfigMap containing data to use for the targets.
                        properties:
                          key:
                            description: The key to select.
                            type: string
                          name:
                            description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
                              TODO: Add other useful fields. apiVersion, kind, uid?'
                            type: string
                          optional:
                            description: Specify whether the ConfigMap or its key
                              must be defined
                            type: boolean
                        required:
                        - key
                        type: object
                        x-kubernetes-map-type: atomic
                      secret:
                        description: Secret containing data to use for the targets.
                        properties:
                          key:
                            description: The key of the secret to select from.  Must
                              be a valid secret key.
                            type: string
                          name:
                            description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
                              TODO: Add other useful fields. apiVersion, kind, uid?'
                            type: string
                          optional:
                            description: Specify whether the Secret or its key must
                              be defined
                            type: boolean
                        required:
                        - key
                        type: object
                        x-kubernetes-map-type: atomic
                    type: object
                  insecureSkipVerify:
                    description: Disable target certificate validation.
                    type: boolean
                  keySecret:
                    description: Secret containing the client key file for the targets.
                    properties:
                      key:
                        description: The key of the secret to select from.  Must be
                          a valid secret key.
                        type: string
                      name:
                        description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
                          TODO: Add other useful fields. apiVersion, kind, uid?'
                        type: string
                      optional:
                        description: Specify whether the Secret or its key must be
                          defined
                        type: boolean
                    required:
                    - key
                    type: object
                    x-kubernetes-map-type: atomic
                  serverName:
                    description: Used to verify the hostname for the targets.
                    type: string
                type: object
            type: object
        required:
        - spec
        type: object
    served: true
    storage: true
